package com.anrongtec.zcpt.openapi.service;//package com.anrongtec.ua.service;
//
//import com.anrongtec.ua.aidl.GetInfoInterface;
//import com.anrongtec.ua.aidl.OnStaffChangeInterface;
//import com.anrongtec.ua.constant.Constant;
//import com.anrongtec.ua.model.Staff;
//import com.anrongtec.ua.receiver.AuthChangeReceiver;
//import com.anrongtec.ua.util.SPUtils;
//import com.art.base.db.LiteOrmDBUtil;
//
//import android.app.Service;
//import android.content.BroadcastReceiver;
//import android.content.Context;
//import android.content.Intent;
//import android.content.IntentFilter;
//import android.database.Cursor;
//import android.net.Uri;
//import android.os.Bundle;
//import android.os.IBinder;
//import android.os.RemoteCallbackList;
//import android.os.RemoteException;
//import android.text.TextUtils;
//
//public class RemoteService extends Service {
//	final RemoteCallbackList<OnStaffChangeInterface> mCallbacks = new RemoteCallbackList<OnStaffChangeInterface>();
//	private String authId = "0";
//
//	@Override
//	public IBinder onBind(Intent intent) {
//		return binder;
//	}
//
//	@Override
//	public void onCreate() {
//		super.onCreate();
//		IntentFilter filter = new IntentFilter();
//		filter.addAction(Constant.ACTION.FINGER_CHANGE_ACTION);
//		// filter.addAction(Constant.ACTION.FINGER_CLEAR_ACTION);
//		registerReceiver(receiver, filter);
//	}
//
//	@Override
//	public void onDestroy() {
//		unregisterReceiver(receiver);
//		super.onDestroy();
//	}
//
//	private void callback() {
//		final int N = mCallbacks.beginBroadcast();
//		for (int i = 0; i < N; i++) {
//			try {
//				mCallbacks.getBroadcastItem(i).onStaffChanged();
//			} catch (RemoteException e) {
//				e.printStackTrace();
////				mCallbacks.unregister(mCallbacks.getBroadcastItem(i));
////				callback(staff);
//			}
//		}
//		mCallbacks.finishBroadcast();
//	}
//
//	private GetInfoInterface.Stub binder = new GetInfoInterface.Stub() {
//
//		@Override
//		public Staff getCurrentStaff() throws RemoteException {
//			// authId =
//			// SPUtils.getInstance(getApplicationContext()).getFingerId();
//			if (authId.equals("0")) {
//				// authId =
//				authId = getLastFingerId() + "";
//			}
//			Staff staff = LiteOrmDBUtil.getInfoById(authId, Staff.class);
//			return staff;
//		}
//
//		@Override
//		public String getCurrentAuthToken() throws RemoteException {
//			if (authId.equals("0")) {
//				// authId =
//				authId = getLastFingerId() + "";
//			}
//			return authId;
//		}
//
//		@Override
//		public void registerStaffChangeCallback(OnStaffChangeInterface callback) throws RemoteException {
//			if (callback != null) {
//				mCallbacks.register(callback);
//			}
//		}
//
//		@Override
//		public void unregisterStaffChangeCallback(OnStaffChangeInterface callback) throws RemoteException {
//			if (callback != null) {
//				mCallbacks.unregister(callback);
//			}
//		}
//
//	};
//
//	private int getLastFingerId() {
//		Cursor cursor = null;
//		Uri contentUri = Uri.parse("content://com.thundersoft.finger.info/last_authentication");
//		cursor = getContentResolver().query(contentUri, null, null, null, null);
//		try {
//			if (cursor != null && cursor.moveToFirst()) {
//				int fingerIdIndex = cursor.getColumnIndex("fingerid");
//				int fingerId = cursor.getInt(fingerIdIndex);
//				return fingerId;
//			}
//		} catch (Exception e) {
//			e.printStackTrace();
//		} finally {
//			if (cursor != null) {
//				cursor.close();
//			}
//		}
//		return 0;
//	}
//
//	private BroadcastReceiver receiver = new BroadcastReceiver() {
//
//		@Override
//		public void onReceive(Context context, Intent intent) {
//			Bundle bundle = intent.getExtras();
//			int fingerId = bundle.getInt("fingerid");
//			authId = fingerId + "";
//			Staff staff = LiteOrmDBUtil.getInfoById(authId, Staff.class);
//			callback();
//		}
//	};
//
//}
